(Abstract pattern)